package On_class.L0331.book;

import java.util.*;

public class BooksDaoArrayList implements BooksDao{
    /*使用同一个集合*/
    ArrayList<Books> list =new ArrayList<Books>();

    @Override
    public void insert(Books books) {
//        图书的id不能重复
//        调用方法完成判断集合中是否已经存在ID
//        若不存在，则将books对象添加到list中
//        若存在，提示保存失败
        Books b=select(books.getId());
        if (b==null){
            list.add(books);
            System.out.println("保存成功");

        }else {
            System.out.println("保存失败，ID重复");
        }

    }

    @Override
    public void selectAll() {
        Iterator<Books> iterator =list.iterator();
        while (iterator.hasNext()){
            Books books=iterator.next();
            System.out.println(books);
        }
    }

    @Override
    public Books select(int id) {
        /*判断集合中是否存在id，存在返回Books对象，
        不存在返回null */
        for (Books b:list){
            if(b.getId()==id){
                return  b;
            }
        }
        return null;
    }

    @Override
    public void update(int id, Books b) {
        Books books =select(id);
        int index =list.indexOf(books);
        list.remove(books);
        list.add(index,b);
        System.out.println("更新成功");

    }

    @Override
    public void delete(int id) {
        Books books=select(id);
        if(books==null){
            System.out.println("要删除的书不存在");
        }else{
            list.remove(books);
            System.out.println("删除成功");
        }
    }
}
